Computing environments, such as data centers, frequently employ cloud computing platforms, where “cloud” refers to a collective computing infrastructure that implements a cloud computing paradigm. For example, as per the National Institute of Standards and Technology (NIST Special Publication No. 800-145), cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. Cloud-based data centers are deployed and managed by cloud service providers, who provide a computing environment for customers (tenants) to run their application programs (e.g. business applications or otherwise).
Current cloud-based data centers typically have services or tools to monitor and meter the system-level metrics of the cloud infrastructure, e.g., physical resource utilization, operation intelligence, deployment topology, etc. For example, these monitoring tools include, but are not limited to, Ganglia, Nagios, AWS CloudWatch, OpenStack Ceilometer, etc. These tools are monitoring systems for cloud providers to gain system-wide visibility into the cloud platform and its infrastructure.